Methods and apparatus for gifting over a data network

ABSTRACT

A method for providing a content gift to a gift-receiving terminal is provided. The method includes a gift server communicating with the gift-receiving terminal over a wireless communication link to determine what content is owned by the gift-receiving terminal. The method further includes the gift server generating catalog data including at least one content gift targeted for the gift receiving terminal. Further included in the method is the gift server wirelessly transmitting the catalog data to a gift-giving terminal. Additionally, the method includes the gift server receiving a selection of a content gift from the gift-giving terminal over a wireless communication link. Further included is the gift server facilitating delivery of the selected content gift to the gift-receiving terminal.

CROSS-REFERENCE TO RELATED APPLICATIONS

The subject application is a continuation of, and claims priority fromU.S. patent application Ser. No. 10/832,717, filed on Apr. 26, 2004, andentitled “METHODS AND APPARATUS FOR GIFTING OVER A DATA NETWORK,” nowU.S. Pat. No. 7,412,411, which is incorporated herein by reference inits entirety.

The present disclosure relates generally to the operation of datanetworks, and more particularly, to methods and apparatus for providinga content gift in a data network.

DESCRIPTION OF THE RELATED ART

Advances in technology have resulted in the development and deploymentof extensive data networks. These networks include both public datanetworks, such as the Internet, and specialized networks, such aswireless telecommunication networks. Users of these networks have theability to access a wide variety of information and services that areavailable as network resources.

One area where data networks have become especially useful is in thearea of downloadable content. Typically this content includesexecutables, program files, applications, image or multimedia files,data, meta-data, or any other type of file or content that providesinformation or additional functionality to a device. For example, adownloadable application may provide the device user with a real-timedisplay of information such as news or traffic conditions, provideproductivity functions, such as a personal organizer, or provideentertainment through various online or offline games.

There currently exists an increasing demand for downloadable content inwireless network environments. In a wireless environment, a variety ofwireless devices, such as wireless telephones and personal digitalassistants (PDAs), communicate over a wireless network. The wirelessnetwork includes network servers that operate to provide various networkservices and resources to the devices. Furthermore, the wireless networkmay also be coupled to a public network (i.e., the Internet), so thatservers on the public network can also provide services to the wirelessdevices.

Typically, a wireless device downloads content over the air from anetwork server. For example, the content may be an application that isdownloaded for free or purchased by the user of the wireless device, whoeffectively obtains the rights to use the application for an unlimited,fixed, or usage count based expiration period.

It has become increasingly desirable to allow a content gift to be givento a specific network terminal. For example, a user of a first networkterminal may wish to give a content gift to the user of a second networkterminal. The content gift comprises any type of file, data, orinformation that can be downloaded and used on the second networkterminal. Typically, the user of the first terminal assumes any costsassociated with the content gift. For example, the content gift may be adownloadable application that the first user finds to be especiallyuseful or productive, or the content gift may simply be content that thesecond user would like to have.

Unfortunately, current systems operate so that when a gift-giver gives acontent gift, it is done without knowing whether or not the content giftis compatible with the gift-receiving terminal. For example, anapplication may operate properly on the gift-giver's terminal, however,that same application may not operate properly on the gift-receivingterminal because of hardware or software incompatibilities. Furthermore,the user of the gift-receiving terminal may have previously purchasedthe same application, so that a duplication of the application on thegift-receiving terminal results. Thus, the gift-giver has no way ofknowing what content is compatible with the gift-receiving terminal, orwhat content has already been purchased for use on that terminal.

Therefore, what is needed is a system that allows a content gift to begiven to a gift-receiving terminal in a data network, where the contentgift is known to be compatible with the gift-receiving terminal. Thesystem should also allow a gift-giver to determine in advance whether ornot the intended content gift currently exists on the gift-receivingterminal. As a result, such a system would avoid the compatibilityproblems and potential duplicate purchases associated with currentsystems.

SUMMARY

In one or more aspects, a gifting system comprising methods andapparatus for allowing a content gift to be given to a gift-receivingterminal in a data network is provided.

According to one aspect, a method for providing a content gift to agift-receiving terminal is provided. The method may include a giftserver communicating with the gift-receiving terminal over a wirelesscommunication link to determine what content is owned by thegift-receiving terminal. The method may further include the gift servergenerating catalog data including at least one content gift targeted forthe gift receiving terminal. Further included in the method may be thegift server wirelessly transmitting the catalog data to a gift-givingterminal. Additionally, the method may include the gift server receivinga selection of a content gift from the gift-giving terminal over awireless communication link. Further included may be the gift serverfacilitating delivery of the selected content gift to the gift-receivingterminal.

According to another aspect, a method for a gift-giving terminal toprovide a content gift to a gift-receiving terminal is provided. Themethod may include transmitting, by the gift-giving terminal, anidentifier associated with the gift-receiving terminal to a gift serverover a wireless communication link to request catalog data correspondingto the gift-receiving terminal. The method may further include receivingcatalog data from the gift server over a wireless communication link.The catalog data includes at least one content gift previouslycommunicated to the gift server as targeted for the gift-receivingterminal. Further included in the method is transmitting an identifierfor a content gift from the catalog data to the gift server over awireless communication link to facilitate delivery of the selectedcontent gift to the gift-receiving terminal.

According to still another aspect, a method for providing a servicefeature to a gift-receiving terminal is provided. The method may includea gift server receiving data from the gift-receiving terminal over awireless communication link. The data identifies at least one servicefeature. The method may further include the gift server generatingcatalog data including at least one service feature targeted for thegift-receiving terminal. Further included in the method may be the giftserver wirelessly transmitting the catalog data to a gift-givingterminal. The method may further include the gift server receiving aselection of a catalog data service feature from the gift-givingterminal over a wireless communication link. Further included in themethod may be the gift server facilitating activation of the selectedservice feature with respect to the gift-receiving terminal.

According to yet another aspect, a method for a gift-giving terminal toprovide a service feature gift to a gift-receiving terminal is provided.The method may include transmitting, by a gift-giving terminal, anidentifier associated with a gift-receiving terminal to a gift serverover a wireless communication link to request catalog data correspondingto the gift-receiving terminal. The method may further include receivingcatalog data from the gift server over a wireless communication link.The catalog data may include at least one service feature previouslycommunicated to the gift server as targeted for the gift-receivingterminal. Further included in the method may be transmitting anidentifier for a service feature from the catalog data to the giftserver over a wireless communication link to facilitate activation ofthe selected service feature for the gift-receiving terminal.

In accordance with still another aspect, a gift server for use with agift-giving terminal to provide a content gift to a gift-receivingterminal is provided. The gift server may include a catalog requestreceiver, a catalog transmitter, a gift request receiver, and a gifttransmitter. The catalog request receiver operates to receive a catalogrequest from the gift-giving terminal over a wireless communicationlink. The request identifies the gift-receiving terminal. The catalogtransmitter operates to generate catalog data including at least onecontent gift targeted for to the gift-receiving terminal by reference todata received from the gift-receiving terminal and wirelesslytransmitting the catalog data to the gift-giving terminal. The giftrequest receiver operates to receive a selection of a catalog datacontent gift from the gift-giving terminal over a wireless communicationlink. The gift transmitter operates to facilitate delivery of theselected content gift to the gift-receiving terminal.

According to still another aspect, a gift-giving terminal operable toprovide content gift to a gift-receiving terminal is provided. Thegift-giving terminal includes a catalog requester, a catalog receiver,and a gift selector. The catalog requester operates to transmit anidentifier associated with a gift-receiving terminal to a gift serverover a wireless communication link to request catalog data correspondingto the gift-receiving terminal. The catalog receiver operates to receivecatalog data from the gift server over a wireless communication link,the catalog data including at least one content gift previouslycommunicated to the gift server as targeted for the gift-receivingterminal. The gift selector operates to transmit an identifier for acontent gift from the catalog data to the gift server over a wirelesscommunication link to facilitate delivery of the selected content giftto the gift-receiving terminal.

According to yet another aspect, a processor for use in a serverterminal used with a gift-giving terminal to provide a content gift to agift-receiving terminal is provided. The processor includes means forreceiving a catalog request from a gift-giving terminal over a wirelesscommunication link. The request identifies the gift-receiving terminal.The processor further includes means for generating catalog dataincluding at least one content gift targeted for the gift-receivingterminal by reference to data received from the gift-receiving terminaland wirelessly transmitting the catalog data to the gift-givingterminal. Further included in the processor is means for receiving aselection of a catalog data content gift from the gift-giving terminalover a wireless communication link. The processor further includes meansfor facilitating delivery of the selected content gift to thegift-receiving terminal.

In still another aspect, a processor for use in a gift-giving terminalto provide content data to a gift-receiving terminal is provided. Theprocessor includes means for transmitting an identifier associated witha gift-receiving terminal to a gift server over a wireless communicationlink to request catalog data corresponding to the gift-receivingterminal. The processor further includes means for receiving catalogdata from the gift server over a wireless communication link. Thecatalog data includes at least one content gift previously communicatedto the gift server as targeted for the gift-receiving terminal. Furtherincluded in the processor is means for transmitting an identifier for acontent gift from the catalog data to the gift server over a wirelesscommunication link to facilitate delivery of the selected content giftto the gift-receiving terminal.

In another aspect, a gift-giver selects the content gift from a catalogthat comprises a list of content that is known to be compatible with thegift-receiving terminal. The catalog may also describe content thatcurrently exists on the gift-receiving terminal, so that duplication canbe avoided.

In one embodiment, the gift-giver requests the catalog from a server (orgift-server) operating on a data network. The request includes anidentifier that identifies the gift-receiving terminal. For example, ifthe gift-receiving terminal is a wireless telephone, the gift-giverspecifies the telephone number of the gift-receiving terminal in arequest for a catalog of compatible content that is sent to thegift-server. Due to security and privacy concerns, additional securitycodes may be required in the catalog request. The gift-server respondsto the request by compiling and transmitting to the gift-giver adescription of content that is compatible with the gift-receivingterminal. The gift-giver then selects one or more content items from thecatalog as content gifts to be provided to the gift-receiving terminal.Because the content gift is selected from a list of content known to becompatible with the gift-receiving terminal, the system operates toextend the view of the gift-giver to see what would work on anotheruser's terminal. Thus, terminal compatibility and content duplicationproblems are resolved up front before the gift is given.

In one or more embodiments, the gift-giver may give a content gift usingany one of several methods. For example, the gift-giver may operate aterminal similar to the gift-receiving terminal on the same datanetwork. In another embodiment, the gift-giver may provide the contentgift using other means to access the gift-server associated with thegift-receiver. For example, the gift-giver may use a Web page associatedwith the gift-server to view the catalog and select a content gift.Thus, the content gift may originate from a wired or wireless device, afixed computer device, such as a personal computer, or any other devicehaving access to the gift-server associated with the gift-receivingterminal.

In one embodiment, the gifting system allows for targeted content toappear in the catalog. For example, the gift-receiver may be a member ofa financial organization and the gift-server compiles the catalog toinclude compatible content targeted for that organization. Thus, thegift-giver can select a content gift from the targeted information thatis compatible with the gift-receiving terminal.

In one embodiment, a method is provided for operating a server to allowa first terminal to provide a content gift to a second terminal, wherethe first and second terminals selectively communicate with the server.The method comprises receiving a catalog request from the first terminalfor a catalog that identifies content compatible with the secondterminal. The method also comprises generating the catalog andtransmitting the catalog to the first terminal. The method alsocomprises receiving a gift request from the first terminal requestingthat a content gift selected from the identified content in the catalogbe provided to the second terminal, and providing the content gift tothe second terminal.

In one embodiment, apparatus is provided for operating a server to allowa first terminal to provide a content gift to a second terminal, wherethe first and second terminals selectively communicate with the server.The apparatus comprises a catalog request receiver for receiving acatalog request from the first terminal for a catalog that identifiescontent compatible with the second terminal, and a database forgenerating the catalog. The apparatus also comprises a catalogtransmitter for transmitting the catalog to the first terminal. Theapparatus also comprises a gift receiver for receiving a gift requestfrom the first terminal requesting that a content gift selected from theidentified content in the catalog be provided to the second terminal,and logic for providing the content gift to the second terminal.

In one embodiment, a computer-readable media is provided that comprisesinstructions, which when executed by a processor in a server, operate toallow a first terminal to provide a content gift to a second terminal,where the first and second terminals selectively communicate with theserver. The computer-readable media comprises instructions for receivinga catalog request from the first terminal for a catalog that identifiescontent compatible with the second terminal, and instructions forgenerating the catalog. The computer-readable media also comprisesinstructions for transmitting the catalog to the first terminal. Thecomputer-readable media also comprises instructions for receiving a giftrequest from the first terminal requesting that a content gift selectedfrom the identified content in the catalog be provided to the secondterminal, and instructions for providing the content gift to the secondterminal.

In one embodiment, a method is provided for operating a first terminalto provide a content gift to a second terminal, where the first andsecond terminals selectively communicate with a gift server. The methodcomprises transmitting a catalog request to the gift server to obtain acatalog that identifies content compatible with the second terminal. Themethod also comprises receiving the catalog, and selecting a contentgift from the catalog. The method also comprises transmitting a giftrequest to the gift server requesting that the content gift be providedto the second terminal.

In one embodiment, apparatus is provided for use in a first terminal toprovide a content gift to a second terminal, where the first and secondterminals selectively communicate with a server. The apparatus comprisesa catalog request transmitter that operates to transmit a catalogrequest to the server to obtain a catalog that identifies contentcompatible with the second terminal. The apparatus also comprises acatalog receiver that operates to receive the catalog, and selectionlogic that operates to select a content gift from the catalog. Theapparatus also comprises a gift request transmitter that operates totransmit a gift request to the server requesting that the content giftbe provided to the second terminal.

In one embodiment, apparatus is provided for use in a first terminal toprovide a content gift to a second terminal, where the first and secondterminals selectively communicate with a server. The apparatus comprisesmeans for transmitting a catalog request to the server to obtain acatalog that identifies content compatible with the second terminal, andmeans for receiving the catalog. The apparatus also comprises means forselecting a content gift from the catalog, and means for transmitting agift request to the server requesting that the content gift be providedto the second terminal.

In one embodiment, a computer-readable media is provided that comprisesinstructions, which when executed by a processor in a first terminal,operate to provide a content gift to a second terminal, where the firstand second terminals selectively communicate with a server. Thecomputer-readable media comprises instructions for transmitting acatalog request to the gift server to obtain a catalog that identifiescontent compatible with the second terminal. The computer-readable mediaalso comprises instructions for receiving the catalog, and instructionsfor selecting a content gift from the catalog. The computer-readablemedia also comprises instructions for transmitting a gift request to thegift server requesting that the content gift be provided to the secondterminal.

In one embodiment, a method is provided for operating a first terminalto provide a content gift to a second terminal, wherein the first andsecond terminals selectively communicate with each other over a datanetwork. The method comprises transmitting a catalog request to thesecond terminal to obtain a catalog that identifies content compatiblewith the second terminal. The method also comprises receiving thecatalog, selecting a content gift from the catalog, and transmitting agift request to a gift server, wherein the gift server provides thecontent gift to the second terminal.

Other aspects, advantages, and features of the present disclosure willbecome apparent after review of the hereinafter set forth BriefDescription of the Drawings, Detailed Description, and the Claims.

BRIEF DESCRIPTION OF THE DRAWINGS

The foregoing aspects and the attendant advantages of the embodimentsdescribed herein will become more readily apparent by reference to thefollowing detailed description when taken in conjunction with theaccompanying drawings wherein:

FIG. 1 shows one embodiment of a gifting system that allows a contentgift to be provided to a terminal in a data network;

FIG. 2 shows a functional diagram of one embodiment of a server for usein one embodiment of a gifting system;

FIG. 3 shows one embodiment of a method for use in server to provide oneembodiment of a gifting system;

FIG. 4 shows a functional diagram of one embodiment of a terminal devicefor use in one embodiment of a gifting system;

FIG. 5 shows one embodiment of a method for use in a terminal device toprovide one embodiment of a gifting system;

FIG. 6 shows one embodiment of a catalog for use in one or moreembodiments of a gifting system; and

FIG. 7 shows one embodiment of a method for use in a terminal device toprovide one embodiment of a gifting system using peer-to-peercommunication.

DETAILED DESCRIPTION

The following detailed description describes one or more embodiments ofa gifting system that includes methods and apparatus to allow a user ofa first terminal in a data network to give a content gift to a user of asecond terminal in the network. In one embodiment, the gifting systemassembles a catalog of content that is compatible with the secondterminal and transmits the catalog to the first terminal. The user ofthe first terminal selects a specific content gift to be given to thesecond terminal. The selection is transmitted to a gift server thatoperates to provide the selected content gift to the second terminal.The user of the first terminal assumes the cost of the content gift. Thefirst and second terminals may be any type of wired or wirelessterminals, including but not limited to, desktop computers, notebookcomputers, wireless telephones, pagers, PDAs, email devices, tabletcomputers, or other type of wired or wireless devices.

In one or more embodiments, the gifting systems interacts with a runtimeenvironment executing on the device that is used to simplify operationof the device, such as by providing generalized calls for devicespecific resources. One such runtime environment is the Binary RuntimeEnvironment for Wireless® (BREW™) software platform developed byQUALCOMM, Inc., of San Diego, Calif. In the following description, itwill be assumed that one embodiment of a gifting system is implementedusing a wireless device that is executing a runtime environment, such asthe BREW software platform. However, one or more embodiments of thegifting system are suitable for use with other types of runtimeenvironments to provide content gifts to wired and wireless devices.Furthermore, the term “content” is use herein to describe any type ofapplication, multimedia file, image file, executable, program, web page,script, document, presentation, message, data, meta-data, or any othertype of content or information that may be rendered, processed, orexecuted on a device.

FIG. 1 shows one embodiment of a gifting system 100 that allows a giftto be provided to a terminal in a data network. The system 100 comprisesa first wireless terminal 102 that communicates with a data network 104via a wireless communication channel 106. The data network 104 comprisesany type of data network that may include, but is not limited to, awired, wireless, private, or public data network, or any combinationthereof.

The system 100 also comprises a server 108 (also known as a“gift-server”) that is coupled to the network 104 via a communicationchannel 120 to provide services to devices in communication with thenetwork 104. For example, the wireless terminal 102 may be a wirelesstelephone, and the server 108 may be part of a nationwidetelecommunications network that provides telecommunication services tothe telephone. The communication channel 120 may be any type of wired orwireless communication channel.

Also in communication with the network 104 is a second terminal 110. Theterminal 110 is in communication with the data network 104 via thewireless communication channel 122. The terminal 110 may be any type ofwireless device.

In one embodiment, the server 108 comprises a database 112 anddownloadable content 114. The database 112 comprises information aboutthe operation of the data network 104 and information about the terminaldevices supported by the server 108. For example, the database 112includes information about the hardware and software configurations ofthe terminals 102 and 110. Thus, the database 112 comprises identifyinginformation and configuration information about network terminals.

The content 114 comprises any type of application, executable, imagefile, multimedia file, data file, or any other type of content file. Thecontent 114 may include applications designed for a specific type ofdevice or content that is operable on a wide variety of devices. Thefiles included in the content 114 have associated identifiers that canbe used to identify each file.

In one embodiment, the gifting system operates to allow the user of thefirst terminal 102 to give a content gift to the user of the secondterminal 110. For example, the content gift may comprise one or moreapplications, programs, executables, data files, content files, or anyother available files selected from the content 114. Because the gift isselected from a catalog of compatible content, the selected content giftis compatible with the terminal 110. In one or more embodiments, thegifting system 100 operates to provide the content gift by performingone or more of the following steps.

Terminal 102 transmits a request to the server 108 (as show by path 124)to receive a catalog of content files that are compatible with theterminal 110. The requests include an identifier that identifies theterminal 110 and any authorization information that may be necessary forthe server 108 to verify the request.

The server 108 receives and verifies the request and uses the identifierto compile a list of content files that are compatible with terminal110. For example, the server 108 uses the identifier to search thedatabase 112 to determine the configuration of the terminal 110 andcompatible content files from the available content 114.

The server 108 transmits a catalog 116 of compatible content files tothe terminal 102 (as shown by path 126). For example, the catalog 116contains a list of identifiers that identify content files that arecompatible with the hardware/software of the terminal 110. For example,the catalog 116 identifies three applications that are compatible withthe terminal 110. The catalog may also indicate whether or not theterminal 110 already owns any of the content files.

The user of terminal 102 selects one or more content files from thereceived catalog 116 to be content gifts, and transmits a gift requestthat includes the selection of the content gifts to the server 108 (asshown by path 128).

The server 108 receives and authenticates the gift request and updatesthe database 112 to show that terminal 110 has been given a contentgift. The server 108 may also update its records to show that the userof terminal 102 will pay the costs associated with the selected contentgift.

When communication is established between the server 108 and theterminal 110, the content gift 118 is transmitted to the terminal 110(as shown by path 130). The user of terminal 110 may then use theinformation gift 118 because the content gift 118 is known to becompatible with the terminal 110.

For the purpose of this description, it will be assumed that entitiestransmitting the above-described information are properly credentialedusing any type of known credentialing or authentication technique, sothat any receiving device can verify that it is receiving informationfrom a trusted source.

In one or more embodiments, the server 108, the terminal 102, and theterminal 110 may be any type of devices and their associated connectionsto the data network 104 may be wireless, wired, or any combinationthereof. Thus, embodiments of the gifting system may be implementedusing virtually any network configuration having a variety of serversand terminals that operate to provide the functions of the giftingsystem as described herein.

In one or more embodiments, the gifting system utilizes one or moresecurity techniques to provide security and/or privacy during thegifting process. For example, in one embodiment, the gift-serverrequires secret security codes from the gift-giver before processing thecatalog request. The security codes may comprise the identity of thegift-receiver, a PIN number or other security code, or any other type ofsecurity information, so that the security and privacy of thegift-receiver can be maintained. Therefore, the gift-giver must provideproper authorization to the gift-server before receiving privateinformation about the gift-receiving terminal or its user.

In another embodiment, the gifting system 100 operates to allow a giftto be provided to a terminal in a data network using a peer-to-peertransaction. For example, the terminals 102 and 110 may communicate witheach other to allow the terminal 102 to provide a content gift to theterminal 110. In one embodiment, the gifting system 100 operates toallow the terminal 102 to communicate peer-to-peer with terminal 110 toprovide the content gift by performing one or more of the followingsteps.

Terminal 102 transmits a request to the terminal 110 (as show by path130) to receive a catalog of content files that are compatible with theterminal 110. The request includes any required authenticationinformation to allow a catalog of information to be obtained by theterminal 102.

The terminal 110 receives and verifies the request and compiles a listof content files that are compatible with terminal 110. For example, theterminal may already know what content is compatible, or may content theserver 108 to determine what content is compatible.

The terminal 110 transmits a catalog 116 of compatible content files tothe terminal 102 (as shown by path 132). For example, the catalog 116contains a list of identifiers that identify content files that arecompatible with the hardware/software of the terminal 110. For example,the catalog 116 identifies three applications that are compatible withthe terminal 110.

The user of terminal 102 selects one or more content files from thereceived catalog 116 to be content gifts, and transmits a gift requestto the server 108 that includes the selection of the content gifts (asshown by path 128). In another embodiment, the terminal 102 already hasthe content gift as part of content 136, and so no gift request is sentto the server 108.

If the server 108 receives a gift request it authenticates the giftrequest and updates the database 112 to show that terminal 110 has beengiven a content gift. The server 108 may also update its records to showthat the user of terminal 102 will pay the costs associated with theselected content gift. If the terminal 102 already has the content giftas part of the content 136, the terminal 102 transmits the content giftto the terminal 102, as shown by path 134.

Thus, the terminals 102 and 110 may communicate in a peer-to-peerfashion to allow the terminal 102 to provide a content gift to theterminal 110.

FIG. 2 shows a functional diagram of one embodiment of the server 108for use in one or more embodiments of a gifting system. The server 108comprises the database 112 and the content 114. The server 108 alsocomprises a catalog request receiver 202, a catalog transmitter 204, anda gift request receiver 206. The server 108 also comprises verificationlogic 208, 210 and login logic 212.

The database 112 comprises information about network terminals, such asterminal identifiers and associated software and hardware configurationinformation. The content 114 comprises any type of application,executable, program file, or any other type of content file that may beprocessed by a terminal device.

In one embodiment, the catalog request receiver 202, the catalogtransmitter 204, and the gift request receiver 206 comprise a processor,CPU, gate array, logic, software, or any combination thereof Forexample, in one embodiment, a processor executing program instructionsprovides the functions of the receiver 202, the transmitter 204, and thereceiver 206.

In one or more embodiments, the server 108 generally comprises logic toexecute machine-readable instructions to perform the functions describedherein. For example, instructions may be loaded into the server 108 froma computer-readable media, such as a floppy disk, CDROM, Flash memory,or other computer-readable media that interfaces to the server 108. Inanother embodiment, the instructions may be downloaded into the server108 from a network resource, such as a network server or any other typeof network resource that interfaces to the server 108. The instructions,when executed by the server 108, provide one or more embodiments of agifting system as described herein.

The catalog request receiver 202 operates to receive a request for acatalog that contains a list of identifiers that identify one or morecontent files of the content 114. A communication channel 214 couplesthe receiver 202 to external devices or systems. For example, thechannel 214 may be a network connection that couples the receiver 202 toa data network to receive catalog requests. In one or more embodiments,the channel 214 may be any type of communication channel that operatesto couple the receiver 202 to other devices.

The catalog transmitter 204 operates to transmit a catalog to anexternal device or system. A communication channel 216 couples thetransmitter 204 to external devices or systems. For example, the channel216 may be a network connection that couples the transmitter 202 to adata network to transmit catalogs to other devices. In one or moreembodiments, the channel 216 may be any type of communication channelthat operates to couple the transmitter 204 to other devices.

The gift request receiver 206 operates to receive gift requests fromexternal devices or systems. A gift requests identifies a content giftto be provided to an identified terminal. For example, the database 112comprises information about terminals serviced by the server 108. Acommunication channel 218 couples the receiver 206 to external devicesor systems. For example, the channel 218 may be a network connectionthat couples the receiver 206 to a data network to receive giftrequests. In one or more embodiments, the channel 218 may be any type ofcommunication channel that operates to couple the receiver 206 to otherdevices.

The login logic 212 operates to process login input received from one ormore terminals that are serviced by the server 108. For example, theserver may be part of a data network and operates to provide networkservices to multiple terminal devices. The login logic 212 communicateswith various terminals using a communication channel 220. For example,the channel 220 may be a network connection that couples the login logic212 to a data network to communicate with various terminals. In one ormore embodiments, the channel 220 may be any type of communicationchannel that operates to couple the login logic 212 to other devices.

In one embodiment, the login logic 212 operates to communicate with thegift-receiving terminal to determine what content is owned by thatterminal. For example, the gift-receiving terminal may haveindependently acquired the intended content gift and this informationcan be discovered by the login logic 212. For example, the login logic212 queries the gift-receiving terminal about the content it owns viathe channel 220. In one embodiment, if the logic 212 discovers that thegift-receiving terminal has independently acquired the intended contentgift, then the logic 212 operates to terminate the gift. In this case,the gift-giving terminal will be refunded any costs associated with theintended gift (i.e., the database 112 will be updated) and anotification message will be transmitted to the gift-giving terminalthat indicates that the content gift was not provided to the secondterminal. Thus, it is possible for the gifting system to avoid giving acontent gift that duplicates the content owned by the gift-receivingterminal.

In one embodiment, the communication channels 214, 216, 218, and 220 areindependent channels. In another embodiment, the channels 214, 216, 218,and 220 are the same channel. The channels 214, 216, 218, and 220 maycomprise any type of wired or wireless channel, or any combinationthereof. Thus, any configuration may be used to allow the functionalelements of the server 108 to communication with external devices orsystems.

It should be noted that the server 108 illustrates just one embodiment,and that other server configurations are possible to provide thefunctions described herein. For example, it is possible that thefunctional elements of the server 108 be combined, rearranged, changed,added to, or deleted within the scope of the described embodiments.

FIG. 3 shows one embodiment of a method 300 for use in server to provideone embodiment of a gifting system. For the purpose of clarity, theoperation of the method 300 will be described with reference to theserver 108 shown in FIG. 2.

At block 302, a request for a catalog is received at the server. Forexample, a terminal communicates with the server 108 via the channel 214to request a catalog of content compatible with a gift-receivingterminal. The request includes information to identify a requestingterminal and the gift-receiving terminal.

At block 304, the request for a catalog is verified. For example, theverification logic 208 operates to verify that the requesting terminalis authorized to request the catalog and receive private informationabout the gift-receiving terminal. Any type of authorization and/orverification technique may be used to verify the request.

At block 306, the request is used to compile a catalog that identifiescontent that is compatible with the gift-receiving terminal. Forexample, the request is sent from the verification logic 208 to thedatabase 112 where the identifier of the gift-receiving terminal is usedto assemble a catalog identifying compatible content. For example, thedatabase includes hardware and software configuration information aboutthe gift-receiving terminal. The configuration information is used todetermine which of the files included in the content 114 is compatiblewith the gift-receiving terminal. In one embodiment, the catalog alsoincludes information about content currently owned by the gift-receivingterminal.

At block 308, a listing identifying all compatible content is assembledinto a catalog file, which may be in any suitable type of file format.The catalog file may also include any other information relevant to theoperation or configuration of the gift-receiving terminal. For example,the catalog file may include information about current content andlicenses associated with the gift-receiving terminal.

At block 310, the assembled catalog is transmitted to the gift-givingterminal that requested the catalog. For example, the compiled catalogof compatible content is sent from the database 112 to the catalogtransmitter 216, which then transmits the catalog to the gift-givingterminal via the communication channel 216.

At block 312, a gift request is received at the server 108. For example,the gift request receiver 206 receives the gift request via the channel218. In one embodiment, a terminal that has received the catalog andselected one or more compatible content files to give as a gift toanother terminal generates the gift request. The gift request includesinformation to identify the gift-giving terminal, a content gift, andthe gift-receiving terminal.

At block 314, the server verifies the gift request. For example, theverification logic 210 operates to verify that the requesting terminalis authorized to request a gift. Any type of authorization and/orverification technique may be used to verify the request.

At block 318 the server establishes communication with thegift-receiving terminal. For example, in one embodiment, communicationis established when the gift-receiving terminal logs in to the loginlogic 212 via the channel 220. Communication with the gift-receivingterminal may also be established in any other way. For example, theserver 108 may initiate communication with the gift-receiving terminal.

At block 320, a test is performed to see if the gift-receiving terminalhas already acquired the content gift. In one embodiment, the giftserver 108 contacts the gift-receiving terminal 110 to determine if thecontent gift already resides on the gift-receiving terminal 110. Forexample, during the time that the gift-giving terminal 102 wasprocessing the catalog to select a content gift to give, thegift-receiving terminal acquired the selected content gift by some othermeans. For example, the gift-receiving terminal purchased the contentindependently. If the gift-receiving terminal already has the content,then a gift of the identical content would result in duplicate contenton the gift-receiving terminal. It is desirable to avoid such aduplicate situation. Thus, if the gift-receiving terminal already hasthe selected content, the method proceeds to block 322, and if theselected content does not already reside on the gift-receiving terminal,the method proceeds to block 324.

At block 322, it has been determined that the content gift alreadyresides on the gift-receiving terminal so a refund is provided to thegift-giving terminal. For example, the database on the gift-server isupdated to reflect that the gift was not given and no costs are to becharged to the gift-giving terminal. In one embodiment, a notificationis sent to the gift-giving terminal to notify that terminal that thecontent gift was not provided to avoid duplicate content on thegift-receiving terminal. It is also possible to send a notification tothe gift-receiving terminal that a content gift was returned because ofduplicate content.

At block 324, the gift-receiving terminal does not already own thecontent gift, so the content gift is transmitted to the gift-receivingterminal. For example, in one embodiment, the selected content gift isretrieved from the content 114 by the login logic 212 and transmitted tothe gift-receiving terminal via the channel 220. Any other technique maybe used to transmit the content gift to the gift-receiving terminal.

Thus, the method 300 operates to provide a content gift in a datanetwork. It should be noted that the method 300 illustrates just onemethod and that it is possible to rearrange, change, combine, or deletemethod steps within the scope of the described embodiments.

FIG. 4 shows a functional diagram of one embodiment of the terminal 102for use in one embodiment of a gifting system. The terminal 102comprises a catalog request transmitter 402, catalog receiver 404, giftrequest transmitter 406, and selection logic 408.

In one embodiment, the catalog request transmitter 402, catalog receiver404, gift request transmitter 406, and selection logic 408 comprise aprocessor, CPU, gate array, logic, software, or any combination thereof.For example, in one embodiment, a processor executing programinstructions may provide the functions of any or all of the receivertransmitter 402, the receiver 404, the transmitter 406, and theselection logic 408.

In one or more embodiments, the terminal 102 generally comprises logicto execute machine-readable instructions to perform the functionsdescribed herein. For example, instructions may be loaded into theterminal 102 from a computer-readable media, such as a floppy disk,CDROM, Flash memory, or other computer-readable media that interfaces tothe terminal 102. In another embodiment, the instructions may bedownloaded into the terminal 102 from a network resource, such as anetwork server or any other type of network resource that interfaces tothe terminal 102. The instructions, when executed by the terminal 102,provide one or more embodiments of a gifting system as described herein.

The catalog request transmitter 402 operates to transmit a request for acatalog to a gift server, such as the server 108. In one embodiment, thetransmitter 402 receives information from a user input 410. The userinput 410 allows the user of the terminal 102 to input information thatis used as part of a catalog request. The information includes anidentifier that identifies a gift-receiving terminal. The catalogrequest is transmitted via a communication channel 412 that allowscommunication with the gift server.

The catalog receiver 404 operates to receive a catalog from a giftserver. The catalog includes a list identifying content that arecompatible with the selected gift-receiving terminal. The catalogreceiver 404 communicates with the gift server via the communicationchannel 414.

The selection logic 408 receives the catalog from the catalog receiverand displays it to the terminal user. The user then selects (using theuser input 410) one or more content gifts to be given to thegift-receiving terminal.

The selections are sent to the gift request transmitter 406, whichtransmits a gift request to the gift server via the communicationchannel 416. In one embodiment, the gift request transmitter includeslogic to receive a notification that the gift was not given to thegift-receiving terminal because the selected content gift is alreadyowned by the gift-receiving terminal. For example, while the gift-givingterminal selects the content gift from the catalog, the gift-receivingterminal acquires the selected content gift by some other means. Forexample, the gift-receiving terminal acquires the selected content giftthrough an independent purchase. Thus, the gift server will not providethe content gift to the gift-receiving terminal to avoid duplicatecontent on the gift-receiving terminal. In one embodiment, the giftserver sends a notification message that the content gift was notdelivered to avoid a duplicate content situation. The notificationmessage is received by logic at the gift request transmitter 406 forfurther processing at the gift-giving terminal.

In one embodiment, the communication channels 412, 414, and 416 areindependent channels. In another embodiment, the channels 412, 414, and416 are the same channel. The channels 412, 414, and 416 may compriseany type of wired or wireless channel, or any combination thereof. Thus,any configuration may be used to allow the functional elements of theterminal 102 to communication with external devices or systems.

It should be noted that the terminal 102 illustrates just oneembodiment, and that other server configurations are possible to providethe functions described herein. For example, it is possible that thefunctional elements of the terminal 102 be combined, rearranged,changed, added to, or deleted within the scope of the describedembodiments.

FIG. 5 shows one embodiment of a method 500 for use in a terminal deviceto provide one embodiment of a gifting system. For example, the method500 is suitable for use with the terminal 102 shown in FIG. 4.Therefore, for added clarity, the following detailed description of themethod 500 includes additional references to the terminal 102 in FIG. 4.

At block 502, a catalog identifying content compatible with agift-receiving terminal is requested. For example, the user of terminal102 provides user input to the transmitter 402 via input 410. The userinput comprises information that includes an identifier that identifiesthe gift-receiving terminal. The information is used to create a catalogrequest that is transmitted by the transmitter 402 to a gift server viathe communication channel 412.

At block 504, the terminal receives a catalog that identifies contentcompatible with the gift-receiving terminal. For example, the giftserver receives the catalog request, and after a verification process,compiles a list of content compatible with the gift-receiving terminal.The list is used to create the catalog that is transmitted to theterminal 102 and received by the catalog receiver 404 via the channel414.

At block 506, the user of the terminal selects one or more content giftsfrom the catalog to be given to the gift-receiving terminal. Forexample, the received catalog is provided to the selection logic 408 andthereafter displayed to the terminal user. The terminal user selects thedesired content gifts from the catalog via the user input 410.

At block 508, a gift request is transmitted from the terminal 102 to thegift server. The gift request includes one or more identifiers thatidentify content gifts that have been selected to be given to agift-receiving terminal that is also identified in the request. Forexample, the user selects content gifts from the catalog to give asgifts to the gift-receiving terminal. The selections are incorporatedinto a gift request that is transmitted from the transmitter 406 to thegift server. When the gift server receives the gift request, the contentgifts are provided to the gift-receiving terminal and the gift-givingterminal 102 assumes any costs associated with the content gifts.

The method 500 is intended to be illustrative and not limiting of theoperation of the various embodiments described herein. For example, itwould be obvious to one with skill in the art to make minor changes,additions, or deletions to any of the described method steps.Furthermore, the described method steps may be combined, rearranged, orreordered without deviating from the scope of the described embodiments.

FIG. 6 shows one embodiment of a catalog 600 for use in one or moreembodiments of a gifting system. In one embodiment, the catalog isprepared by a gift server in response to a catalog request received froma gift-giving terminal. The catalog 600 comprises a header section 602that identifies the gift-receiving terminal. The catalog 600 alsocomprises an active content section 604, a compatible content section608, and a targeted content section 610.

The active content section 604 shows content that is currently owned bythe gift-receiving terminal. The active content is owned or licensed bythe gift-receiving terminal and the existing license information isprovided at 606.

The compatible content section 608 shows content that is compatible withthe gift-receiving terminal. For example, a gift-giver may selectcontent gifts from several categories, such as entertainment, news,finance, or games.

The targeted content section 610 shows content that has been targetedfor the gift-receiving terminal. For example, if the gift-receivingterminal is a member of a financial organization, the targeted contentmay be the content shown in section 610.

Therefore, the catalog 600 can be used in one embodiment of a giftingsystem to allow a content gift to be given to a gift-receiving terminal.It should be noted that the catalog 600 shows just one embodiment, andthat other embodiments of a catalog are possible for use with one ormore embodiments of a gifting system.

FIG. 7 shows one embodiment of a method 700 for use in a terminal deviceto provide one embodiment of a gifting system using peer-to-peercommunication. For example, the method 700 is suitable for use with theterminal 102 shown in FIG. 4. Therefore, for added clarity, thefollowing detailed description of the method 700 includes additionalreferences to the terminal 102 in FIG. 4.

At block 702, a catalog identifying content compatible with agift-receiving terminal is requested. For example, the user of terminal102 provides user input to the transmitter 402 via input 410. The userinput comprises information that includes an identifier that identifiesthe gift-receiving terminal 110. The information is used to create acatalog request that is transmitted by the transmitter 402 to thegift-receiving terminal 110 using peer-to-peer communication, forexample, by using the communication channel 412.

At block 704, the terminal receives a catalog that identifies contentcompatible with the gift-receiving terminal. For example, the terminal110 receives the catalog request, and after a verification process,compiles a list of compatible content. In one embodiment, informationabout compatible content is available at the terminal 110. In anotherembodiment, the terminal 110 requests information about compatiblecontent from a gift server, for example, the server 108. The informationabout compatible content is used to create the catalog that istransmitted from the terminal 110 to the terminal 102 and received bythe catalog receiver 404 via the channel 414.

At block 706, the user of the gift-giving terminal selects one or morecontent gifts from the catalog to be given to the gift-receivingterminal. For example, the received catalog is provided to the selectionlogic 408 and thereafter displayed to the terminal user. The terminaluser selects the desired content gifts from the catalog via the userinput 410.

In one embodiment, the method 700 proceeds to block 708 where a giftrequest is transmitted from the terminal 102 to the gift server. Thegift request includes one or more identifiers that identify contentgifts that have been selected to be given to a gift-receiving terminalthat is also identified in the request. For example, the user selectscontent gifts from the catalog to give as gifts to the gift-receivingterminal. The selections are incorporated into a gift request that istransmitted from the transmitter 406 to the gift server 108. When thegift server receives the gift request, the content gifts are provided tothe gift-receiving terminal 110 and the gift-giving terminal 102 assumesany costs associated with the content gifts.

In another embodiment, the method proceeds to block 710 where thegift-giving terminal 102 transmits the content gift directly to thegift-receiving terminal 110. For example, using peer-to-peercommunication, a content gift located at the terminal 102 is transmittedto the gift-receiving terminal 110.

Thus, it is possible for the gifting system to provide content gifts toa terminal in a data network using a variety of methods to generate acatalog of compatible content and transmitting the selected content giftfrom one of several sources.

Accordingly, while one or more embodiments of methods and apparatus forproviding gifts in a data network have been illustrated and describedherein, it will be appreciated that various changes can be made to theembodiments without departing from their spirit or essentialcharacteristics. Therefore, the disclosures and descriptions herein areintended to be illustrative, but not limiting, of the scope of thedisclosure, which is set forth in the following claims.

1. A method for providing a content gift to a gift-receiving terminal,the method comprising: a gift server communicating with thegift-receiving terminal over a wireless communication link to determinewhat content is owned by the gift-receiving terminal; the gift servergenerating catalog data including at least one content gift targeted forthe gift receiving terminal; the gift server wirelessly transmitting thecatalog data to a gift-giving terminal; the gift server receiving aselection of a content gift from the gift-giving terminal over awireless communication link; and the gift server facilitating deliveryof the selected content gift to the gift-receiving terminal.
 2. Themethod of claim 1, wherein transmitting the catalog data furthercomprises including an authentication code in the catalog data.
 3. Themethod of claim 1, further comprising associating costs of the contentgift with the gift-receiving terminal.
 4. The method of claim 1, whereinproviding the content gift comprises transmitting the content gift tothe gift-receiving terminal using a communication channel that isselected from channels comprising one of wired or wireless communicationchannels.
 5. A method for a gift-giving terminal to provide a contentgift to a gift-receiving terminal, the method comprising: transmitting,by the gift-giving terminal, an identifier associated with thegift-receiving terminal to a gift server over a wireless communicationlink to request catalog data corresponding to the gift-receivingterminal; receiving catalog data from the gift server over a wirelesscommunication link, the catalog data including at least one content giftpreviously communicated to the gift server as targeted for thegift-receiving terminal; and transmitting an identifier for a contentgift from the catalog data to the gift server over a wirelesscommunication link to facilitate delivery of the selected content giftto the gift-receiving terminal.
 6. The method of claim 5, furthercomprising: including security information in the catalog data so thatthe catalog data can be authenticated.
 7. A method for providing aservice feature to a gift-receiving terminal, the method comprising: agift server receiving data from the gift-receiving terminal over awireless communication link, the data identifying at least one servicefeature; the gift server generating catalog data including at least oneservice feature targeted for the gift-receiving terminal; the giftserver wirelessly transmitting the catalog data to a gift-givingterminal; the gift server receiving a selection of a catalog dataservice feature from the gift-giving terminal over a wirelesscommunication link; and the gift server facilitating activation of theselected service feature with respect to the gift-receiving terminal. 8.The method of claim 7, wherein transmitting the catalog data furthercomprises including an authentication code in the catalog data.
 9. Themethod of claim 7, further comprising associating costs of the selectedservice feature with the gift-receiving terminal.
 10. The method ofclaim 7, wherein providing the selected service feature comprisestransmitting the selected service feature to the gift-receiving terminalusing a communication channel that is selected from channels comprisingone of wired or wireless communication channels.
 11. A method for agift-giving terminal to provide a service feature gift to agift-receiving terminal: transmitting, by a gift-giving terminal, anidentifier associated with a gift-receiving terminal to a gift serverover a wireless communication link to request catalog data correspondingto the gift-receiving terminal; receiving catalog data from the giftserver over a wireless communication link, the catalog data including atleast one service feature previously communicated to the gift server astargeted for the gift-receiving terminal; and transmitting an identifierfor a service feature from the catalog data to the gift server over awireless communication link to facilitate activation of the selectedservice feature for the gift-receiving terminal.
 12. The method of claim11, further comprising: including security information in the catalogdata so that the catalog data can be authenticated.
 13. A gift serverfor use with a gift-giving terminal to provide a content gift to agift-receiving terminal, comprising: a catalog request receiver thatoperates to receive a catalog request from the gift-giving terminal overa wireless communication link, the request identifying thegift-receiving terminal; a catalog transmitter that operates to generatecatalog data including at least one content gift targeted for to thegift-receiving terminal by reference to data received from thegift-receiving terminal and wirelessly transmitting the catalog data tothe gift-giving terminal; a gift request receiver that operates toreceive a selection of a catalog data content gift from the gift-givingterminal over a wireless communication link; and a gift transmitter thatoperates to facilitate delivery of the selected content gift to thegift-receiving terminal.
 14. The method of claim 13, wherein the catalogtransmitter further includes an authentication code in the catalog data.15. The method of claim 13, wherein the catalog transmitter furtherassociates costs of the content gift with the gift-receiving terminal.16. The method of claim 13, wherein the gift transmitter provides thecontent gift to the gift-receiving terminal using a communicationchannel that is selected from channels comprising one of wired orwireless communication channels.
 17. A gift-giving terminal operable toprovide content gift to a gift-receiving terminal, comprising: a catalogrequester that operates to transmit an identifier associated with agift-receiving terminal to a gift server over a wireless communicationlink to request catalog data corresponding to the gift-receivingterminal; a catalog receiver that operates to receive catalog data fromthe gift server over a wireless communication link, the catalog dataincluding at least one content gift previously communicated to the giftserver as targeted for the gift-receiving terminal; and a gift selectorthat operates to transmit an identifier for a content gift from thecatalog data to the gift server over a wireless communication link tofacilitate delivery of the selected content gift to the gift-receivingterminal.
 18. The method of claim 17, wherein the catalog requesterreceives catalog data that includes security information in the catalogdata so that the catalog data can be authenticated.
 19. A processor foruse in a server terminal used with a gift-giving terminal to provide acontent gift to a gift-receiving terminal, comprising: means forreceiving a catalog request from a gift-giving terminal over a wirelesscommunication link, the request identifying the gift-receiving terminal;means for generating catalog data including at least one content gifttargeted for the gift-receiving terminal by reference to data receivedfrom the gift-receiving terminal and wirelessly transmitting the catalogdata to the gift-giving terminal; means for receiving a selection of acatalog data content gift from the gift-giving terminal over a wirelesscommunication link; and means for facilitating delivery of the selectedcontent gift to the gift-receiving terminal.
 20. The method of claim 19,wherein the means for generating catalog data further includes anauthentication code in the catalog data.
 21. The method of claim 19,wherein the means for generating catalog data further associates costsof the content gift with the gift-receiving terminal.
 22. The method ofclaim 19, wherein the means for facilitating delivery provides thecontent gift to the gift-receiving terminal using a communicationchannel that is selected from channels comprising one of wired orwireless communication channels.
 23. A processor for use in agift-giving terminal to provide content data to a gift-receivingterminal, comprising: means for transmitting an identifier associatedwith a gift-receiving terminal to a gift server over a wirelesscommunication link to request catalog data corresponding to thegift-receiving terminal; means for receiving catalog data from the giftserver over a wireless communication link, the catalog data including atleast one content gift previously communicated to the gift server astargeted for the gift-receiving terminal; and means for transmitting anidentifier for a content gift from the catalog data to the gift serverover a wireless communication link to facilitate delivery of theselected content gift to the gift-receiving terminal.
 24. The method ofclaim 23, wherein the means for receiving receives catalog data thatincludes security information in the catalog data so that the catalogdata can be authenticated.